<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div id="app">
        <p>作用域插槽，不仅可以接受父组件的html结构，还包括数据</p>
        <son>
            <!-- 作用域插槽,子组件先将数据传给父组件，
                父组件确定要显示哪些，然后通过插槽由子组件显示。
                在父组件的子组件标签中，同过template中的slot-scope属性来接受数据
                这个数据的作用域就是template标签内部
             -->
            <template slot-scope="scope">
                <div>{{scope.nicks[2]}}</div>
                <div>{{scope.nicks.length}}</div>
                <hr>
                <p>以下是v-for的展示</p>
                <button v-for="(item, index) in scope.nicks" :key="index">
                    {{item}}
                </button>
            </template>
        </son>
    </div>
    <template id="son">
        <div>
            <p>我是子组件</p>
            <slot :nicks="list"></slot>
        </div>
    </template>
    <script src="../0511/js/vue.js"></script>
    <script>
        let vm = new Vue({
            el: '#app',
            data:{

            },
            components: {
                son: {
                    template: '#son',
                    data() {
                        return {
                            list: [
                                'Tony', 'Boby', 'xiangNideYe'
                            ]
                        }
                    }
                }
            }
        })
    </script>
</body>
</html>